package com.honey.sql92script.schema;

import java.util.HashMap;
import java.util.Map;

import com.honey.core.dbmapping.structure.Procedure;
import com.honey.core.dbmapping.structure.StructureType;
import com.honey.core.types.Vendor;
import com.honey.core.utils.ObjectDump;

/**
 * 数据库存储过程的数据库结构
 * @author Administrator
 *
 */
public class SqlScriptProcedure implements Procedure {
	
	/** 更多参数(如果可以获取) */
	private Map<String, String> moreInformation = new HashMap<String, String>();

	/** 注释(如果可以获取) */
	private String comment;

	/** 存储过程名称 */
	private String name;

	/** 数据库品牌 */
	private Vendor vendor;
	
	/** 存储过程脚本 */
	private String sqlScipts;
	
	/** 返回类型 */
	private ProcedureResultType procedureResultType;

	@Override
	public ProcedureResultType getProcedureResultType() {
		return this.procedureResultType;
	}

	@Override
	public Map<String, String> getMoreInformation() {
		return this.moreInformation;
	}

	@Override
	public StructureType getSchemaType() {
		return StructureType.PROCEDURE;
	}

	@Override
	public String getSqlScipt() {
		return this.sqlScipts;
	}

	@Override
	public Vendor getVendor() {
		return this.vendor;
	}

	@Override
	public String getComment() {
		return this.comment;
	}

	@Override
	public String getName() {

		return this.name;
	}

	@Override
	public String toString() {
		return ObjectDump.dump(this);
	}

	public String getSqlScipts() {
		return sqlScipts;
	}

	public void setSqlScipts(String sqlScipts) {
		this.sqlScipts = sqlScipts;
	}


	public void setMoreInformation(Map<String, String> moreInformation) {
		this.moreInformation = moreInformation;
	}

	public void setComment(String comment) {
		this.comment = comment;
	}

	public void setName(String name) {
		this.name = name;
	}

	public void setVendor(Vendor vendor) {
		this.vendor = vendor;
	}

	public void setProcedureResultType(ProcedureResultType procedureResultType) {
		this.procedureResultType = procedureResultType;
	}
}
